#include <iostream>

//非类型模板参数
//指定非类型模板参数的值，一定是常量
//编译时就要确定这个非类型的值
//*****非类型模板参数只可以用int修饰，double，float不可以，但是double*可以使用
//允许做模板类型参数的有int enum 指针类型，左值引用类型，decltype(auto)
namespace template_study{
                                   //非类型模板参数                     
    template<typename T,typename U,int val=100>
    auto add(T v1,U v2)->decltype(v1+v2)
    {
        return v1+v2+val;
    }

    //使用
    //add<int,int,800>(12,34);//注意这里非类型模板参数传值

}